package mybox.junit;

import java.io.IOException;

import mybox.engine.*;



import junit.framework.TestCase;

public class ArduinoTC extends TestCase {
	


public void test_Arduino1() throws SecurityException, IOException {
		
		File4Qcad file4qcad = new File4Qcad(ReferenceIOutput.testoutputFile());		
		QVector aktPos = new QVector (0,0);		
		double materialDicke=4;
		double zinkungsFaktor=1;
		double laserBreite=0.03;
		Arduino arduino = new Arduino(file4qcad,aktPos, materialDicke,zinkungsFaktor,laserBreite);
		
		arduino.drawBox();
		
		
		file4qcad.close();
			
	}

public void test_Arduino_Pololu_Box() throws SecurityException, IOException {
	
	File4Qcad file4qcad = new File4Qcad(ReferenceIOutput.testoutputFile());		
	QVector aktPos = new QVector (0,0);		
	double materialDicke=4;
	double zinkungsFaktor=1;
	double laserBreite=0.03;
	Arduino arduino = new Arduino(file4qcad,aktPos, materialDicke,zinkungsFaktor,laserBreite);
	
	arduino.drawArduinoPlusPololu(true);	
	arduino.draw();
	
	
	file4qcad.close();
		
}

public void test_ArduinoBox() throws SecurityException, IOException {
	
	File4Qcad file4qcad = new File4Qcad(ReferenceIOutput.testoutputFile());		
	QVector aktPos = new QVector (0,0);		
	double materialDicke=4;
	double zinkungsFaktor=1;
	double laserBreite=0.03;
	double ardLaenge=0;
	double ardBreite=0;
	double ardHoehe=0;
	ArduinoBox arduinoBox = new ArduinoBox(file4qcad,aktPos, ardLaenge, ardBreite, ardHoehe, materialDicke,zinkungsFaktor,laserBreite);	
	arduinoBox.draw();	
	file4qcad.close();
		
}

public void test_ArduinoPololuBox() throws SecurityException, IOException {
	
	File4Qcad file4qcad = new File4Qcad(ReferenceIOutput.testoutputFile());		
	QVector aktPos = new QVector (0,0);		
	double materialDicke=4.0;
	double zinkungsFaktor=1;
	double laserBreite=0.10;
	
	//Zeichne die Gehäusebox
	double ardLaenge=100;
	double ardBreite=115;
	double ardHoehe=30;
	ArduinoBox arduinoBox = new ArduinoBox(file4qcad,aktPos, ardLaenge, ardBreite, ardHoehe, materialDicke,zinkungsFaktor,laserBreite);	
	
	
	
	//Zeiche die Arduino- und Pololulöcher
	QVector innerUpperRight = Arduino.calcLowerLeftFromUpperRight(arduinoBox.schachtel.grundPlatte1.ecke[2]);
	innerUpperRight.x-=materialDicke+Arduino.xabstand2BoxRand; 
	innerUpperRight.y-=materialDicke+Arduino.yabstand2BoxRand; 
	
	//new Kennzeichen(file4qcad, innerUpperRight);
		
	Arduino arduino = new Arduino(
			file4qcad,
			innerUpperRight,
			materialDicke,zinkungsFaktor,laserBreite);	
	arduino.drawArduinoPlusPololu(true);
	
	//arduino.drawUSB();
	//arduino.drawPower();
	
	arduinoBox.placeUSB(arduino);
	arduinoBox.placePower(arduino);
	arduinoBox.draw();	
	
	//Zeiche die Pololuanschlüsse von oben 
	QVector innerUpperRight2 = Arduino.calcLowerLeftFromUpperRight(arduinoBox.schachtel.grundPlatte2.ecke[2]);
	innerUpperRight2.x-=materialDicke+Arduino.xabstand2BoxRand; 
	innerUpperRight2.y-=materialDicke+Arduino.yabstand2BoxRand; 
	
	//new Kennzeichen(file4qcad, innerUpperRight2);
		
	Arduino arduino2 = new Arduino(
			file4qcad,
			innerUpperRight2,
			materialDicke,zinkungsFaktor,laserBreite);	
	arduino2.drawArduinoPlusPololu(false);
		
	file4qcad.close();
		
}

}
